﻿// -----------------------------------------------------------------------
// <copyright file="TreeSimulator.cs" company="">
// TODO: Update copyright text.
// </copyright>
// -----------------------------------------------------------------------

namespace TestProject
{
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using logika;

    /// <summary>
    /// TODO: Update summary.
    /// </summary>
    public class TreeSimulator
    {
        public static Node getBirdTree()
        {
            Node _root = new Node("Bowerbird", 84230);
            Node cursor;

            //-----------------------górne poddrzewo-----------------------
            _root.potomne.Add(new Node("jakieś dna", 87780)); //live 3550
            cursor = _root.potomne[0];

            cursor.potomne.Add(new Node("jakieś dna", 91570)); //live 3790
            cursor.potomne[0].potomne.Add(new Node("Titmouse", 178900)); //live 87330
            cursor.potomne[0].potomne.Add(new Node("jakieś dna", 114120)); //live 22550

            cursor.potomne[0].potomne[1].potomne.Add(new Node("jakieś dna", 125670)); //live 11550 parent 22550

            cursor.potomne[0].potomne[1].potomne[0].potomne.Add(new Node("Cotinga", 241690)); //live 116020
            cursor.potomne[0].potomne[1].potomne[0].potomne.Add(new Node("jakieś dna", 134790)); //live 9120

            cursor.potomne[0].potomne[1].potomne[0].potomne[1].potomne.Add(new Node("Tapaculo", 237550)); //live 102760
            cursor.potomne[0].potomne[1].potomne[0].potomne[1].potomne.Add(new Node("Canastero", 231080)); //live 96290

            cursor.potomne[0].potomne[1].potomne.Add(new Node("jakieś dna", 123210)); //live 9090 parent 22550
            cursor.potomne[0].potomne[1].potomne[1].potomne.Add(new Node("Flicker", 222580)); //live 99370
            cursor.potomne[0].potomne[1].potomne[1].potomne.Add(new Node("Pitta", 217310)); //live 94100

            cursor.potomne.Add(new Node("jakieś dna", 89240)); //live 1460
            cursor.potomne[1].potomne.Add(new Node("Honeyeater", 168850)); //live 79610
            cursor.potomne[1].potomne.Add(new Node("jakieś dna", 94800)); //live 5560
            cursor.potomne[1].potomne[1].potomne.Add(new Node("Sicklebill", 185060)); //live 90260 parent 5560
            cursor.potomne[1].potomne[1].potomne.Add(new Node("Magpie", 190080)); //live 95280 parent 5560

            //-----------------------górne poddrzewo-----------------------

            //-----------------------dolne poddrzewo-----------------------
            _root.potomne.Add(new Node("jakieś dna", 100580)); //live 16350
            cursor = _root.potomne[1];
            cursor.potomne.Add(new Node("Thrush", 186640)); //live 86060
            cursor.potomne.Add(new Node("jakieś dna", 110360)); //live 9780 parent 16350

            cursor.potomne[1].potomne.Add(new Node("R_Babbler", 173130)); //live 62770
            cursor.potomne[1].potomne.Add(new Node("jakieś dna", 120630)); //live 10270 parent 9780

            cursor.potomne[1].potomne[1].potomne.Add(new Node("C_Babbler", 180880)); //live 60250 parent 10270
            cursor.potomne[1].potomne[1].potomne.Add(new Node("G_Babbler", 169040)); //live 48410 parent 10270

            //-----------------------dolne poddrzewo-----------------------

            return _root;
        }

        public static Node getSimpleTree()
        {
            Node _root = new Node("korzen", 2225914);
            _root.potomne.Add(new Node("child_simple", 5000000));
            _root.potomne.Add(new Node("child_complex", 3221058));
            _root.potomne[1].potomne.Add(new Node("lisc1", 5000000));
            _root.potomne[1].potomne.Add(new Node("lisc2", 5000000));

            return _root;
        }

        public static List<string> getListOfBirdsLeaves()
        {
            List<string> leaves = new List<string>(new string[] { "Bowerbird", "Cotinga", "Thrush", "Flicker", "Sicklebill", "Magpie", "C_Babbler", "Titmouse", 
                "R_Babbler", "Honeyeater", "Pitta", "G_Babbler", "Tapaculo", "Canastero" });
            return leaves;
        }

        public static string getProperTextTree()
        {
            return "(1:84230,((8:87330,((2:116020,(13:102760,14:96290):9120):11550,(4:99370,11:94100):9090):22550):3790,(10:79610,(5:90260,6:95280):5560):1460):3550,(3:86060,(9:62770,(7:60250,12:48410):10270):9780):16350);";
        }
    }
}
